bitkeeper revision 1.606 (3fb7c711FIosxWIF_j9XSEkZmDWlug)
authorkaf24@scramble.cl.cam.ac.uk <kaf24@scramble.cl.cam.ac.uk>
Sun, 16 Nov 2003 18:50:57 +0000 (18:50 +0000)
committerkaf24@scramble.cl.cam.ac.uk <kaf24@scramble.cl.cam.ac.uk>
Sun, 16 Nov 2003 18:50:57 +0000 (18:50 +0000)
dev.c, dom_mem_ops.c:
  Bug fixes.

xen/common/dom_mem_ops.c
xen/net/dev.c

index 8f59e10d51d42e7af17c506f5a50fa71715a70cd..2e8696c53309ca765c884ab426e365a978626e74 100644 (file)
@@ -111,7 +111,7 @@ static long free_dom_mem(struct task_struct *p, reservation_decrease_t op)
         pf = &frame_table[mpfn];
         if ( (pf->type_count != 0) || 
              (pf->tot_count != 0) ||
-             (pf->flags & PG_domain_mask != p->domain) )
+             ((pf->flags & PG_domain_mask) != p->domain) )
         {
             DPRINTK("Bad page free for domain %d (%ld, %ld, %08lx)\n",
                     p->domain, pf->type_count, pf->tot_count, pf->flags);
index 81b50cf4c129d9e61a8693f5640b6cc7bf214b03..3ecec620e798e2dda7c8c659f2ccd68f67cf9ccb 100644 (file)
@@ -1967,7 +1967,8 @@ static int get_tx_bufs(net_vif_t *vif)
             skb->len = tx.size - ETH_HLEN;
             unmap_domain_mem(skb->head);
 
-            netif_rx(skb);
+            if ( netif_rx(skb) == NET_RX_DROP )
+                kfree_skb(skb);
 
             __make_tx_response(vif, tx.id, RING_STATUS_OK);
         }